package com.cloudcc.mobile.dao;

import java.util.List;

import com.cloudcc.cloudframe.net.RequestListener;
import com.cloudcc.cloudframe.net.ResultCallBack;
import com.cloudcc.mobile.entity.ChatUser;
import com.cloudcc.mobile.entity.CoworkerEntity;
import com.cloudcc.mobile.entity.OperateFollowRelation;
import com.cloudcc.mobile.event.CoworkerEventList.CoworkerListEvent;

/**
 * 联系人通讯录 
 * @author seven
 *
 */
public interface ContactEngine {

	
	
	/**@deprecated
	 * 获取 通讯录
	 * @param listener
	 */
	void getContacts(ResultCallBack<List<CoworkerEntity>> listener);
	/** 同步获取通讯录
	 * @param listener
	 */
	void getContactsSync(ResultCallBack<List<CoworkerEntity>> listener);
	/**
	 * @param listener
	 */
	void getContactList(ResultCallBack<List<CoworkerEntity>> listener);
	
	/**获得联系人信息 支持分页数据
	 * @param page 页数
	 * @param pageNum 
	 * @param event
	 */
	void getContactList(int page,int pageNum,CoworkerListEvent event);
	/**
	 * 获取通讯录某一个用户的详情 是chatter接口 注意一下
	 * @param userId
	 * @param listener
	 * 
	 */
	void getUserInfoChatter(String userId,ResultCallBack<ChatUser> listener);
	
	/** 关注或者追随某个人
	 * @param operation
	 * @param listener
	 */
	void followContact(OperateFollowRelation operation,RequestListener listener);
	
	/** 获取下属列表
	 * @param event
	 */
	void getSubContacts(CoworkerListEvent event);
	
	
	
}
